Model負責與資料有關的任務,例如對資料的CRUD都是由Model負責的
使用MVC開發我們就是要有關注點分離(SOC)的精神,所以Model只能負責與資料跟商業邏輯有關的事情,其餘無關的事情,例如控制頁面的顯示就不該由Model來負責
ORM全名Object Relational Mapping,是用來做資料存取的技術
例如LINQ to SQL、EF等
ORM可以用在不同型別系統之間的資料轉換,實務上大多用在資料庫與物件導向程式之間的型別轉換
如果以SQL Server來說的話,ORM就是將關聯式資料對映成物件導向模型
採用ORM或EF又可區分為三種開發模式
1.Database First
2.Model First
3.Code First
Database First
開發以資料庫的資料結構為主,開發過程必須依照資料庫的結構設計為主,來產生相對應的物件模型
Mode First
先在ORM架構中建立模型,讓應用程式依據模型進行開發,資料庫則是透過EF動態產生相對應的SQL語法來建立起資料庫
Code First
開發人員先依據需求,撰寫出類別與屬性的程式碼,資料模型的定義也是依據這些類別與屬性,程式執行時,便可透過ORM自動依據這些類別與屬性來建立資料庫,開發人員完全不需要接觸資料庫的工作,只需要專注在應用程式的開發